[FileBackend] Added support for concurrent file write operations.
authorAaron <aschulz@wikimedia.org>
Wed, 11 Apr 2012 17:51:02 +0000 (10:51 -0700)
committerAaron Schulz <aschulz@wikimedia.org>
Wed, 9 May 2012 12:37:41 +0000 (05:37 -0700)
commit23a0490b788619ec6476f110dc6619e8d6317d38
treef4b93b832066abc2d01cc66d9fd559f0c83ea699
parentcfbfc1e9c1fc471b0bd1dc6fa4690329d3dd8b6b
[FileBackend] Added support for concurrent file write operations.

* FS backends work via popen() and basic shell commands.
* Swift backends use the custom SwiftCloudFiles async features.
* Refactored storagePathsRead()/storagePathsChanged() to normalize the paths
  for correct dependency detection in FileOpBatch.
* Cleaned up SwiftFileBackend exception handling to make debugging easier.
* Added a quick and dirty performance testing script.
* Updated unit tests to include a run with parallelize=implicit.
* Improved file test failure output a bit.

Change-Id: I6a5ed743c30c598e0dd7301dbdb3631c460332fd
includes/AutoLoader.php
includes/filerepo/backend/FSFileBackend.php
includes/filerepo/backend/FileBackend.php
includes/filerepo/backend/FileBackendMultiWrite.php
includes/filerepo/backend/FileBackendStore.php
includes/filerepo/backend/FileOp.php
includes/filerepo/backend/FileOpBatch.php [new file with mode: 0644]
includes/filerepo/backend/SwiftFileBackend.php
maintenance/fileOpPerfTest.php [new file with mode: 0644]
tests/phpunit/includes/filerepo/FileBackendTest.php